package dominio;

import java.util.List;

import javax.persistence.*;

@Entity
@Table(name="nacionales")
public class Nacional extends Articulo{
	
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@ManyToMany
	@JoinTable(name ="nacionalFabricante", 
		joinColumns= @JoinColumn(name="idNac"), 
		inverseJoinColumns=@JoinColumn (name="idFav"))
	private List<Fabricante> fabricantes;

	public Nacional(int id, String descripcion, String pais, float precio,
			List<Fabricante> fabricantes) {
		super(id, descripcion, pais, precio);
		this.fabricantes = fabricantes;
	}
	
	public Nacional(){}

	public List<Fabricante> getFabricantes() {
		return fabricantes;
	}

	public void setFabricantes(List<Fabricante> fabricantes) {
		this.fabricantes = fabricantes;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result
				+ ((fabricantes == null) ? 0 : fabricantes.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Nacional other = (Nacional) obj;
		if (fabricantes == null) {
			if (other.fabricantes != null)
				return false;
		} else if (!fabricantes.equals(other.fabricantes))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "Nacional [fabricantes=" + fabricantes + "]";
	}

	@Override
	public boolean esNacional() {
		return true;
	}
	
}
